/**
 * 处理所有以/captcha/*开头请求的路由器
 */
const express = require('express')
const pool = require('../pool')
const svgCaptcha = require('svg-captcha')
let router = express.Router()
module.exports = router

/**
 * 为用户注册提供的验证码图片
 * 请求地址：
 * 	/captcha/register
 * 响应消息(Content-Type: svg)：
 * 	<svg>....</svg>
 * 客户端HTML文件如何使用：
 * 	<img  src="/captcha/register">
 */
router.get('/register', (req, res, next)=>{
	let options = {
		size: 5, 				// 验证码长度，默认为4
		ignoreChars: '0o1i', 	// 验证码字符中排除 0o1i，默认为''
		noise: 5, 				// 干扰线条的数量，默认为1
		color: true, 			// 验证码的字符是否有颜色，默认没有，如果设定了背景，则默认有
		background: '#efe', 	// 验证码图片背景颜色，默认为透明
		width: 120, 			// 验证码图片的宽度，默认为150
		height: 40, 			// 验证码图片的高度，默认为50
		fontSize: 50, 			// 最大的字体字体
		//charPreset: 'ABCDEFG' 	// 预设字符池，默认为A-Za-z0-9
	}
	// let c = svgCaptcha.create()
	let c = svgCaptcha.create(options)	//创建验证码文字+图片
	// {text: 'ab29', data: '<svg>....</svg>'}
	
	//在服务器端的session空间中存储当前用户的注册验证码
	req.session.registerCaptcha = c.text.toLowerCase()
	//向客户端输出一个SVG响应消息
	res.type('svg')		//修改响应消息头部  Content-Type:  image/svg+xml
	res.send(c.data)	//发送消息主体
	// console.log(req.session.registerCaptcha);
})